package com.holly.unit.gen.api;

import com.holly.unit.gen.api.pojo.TableInfo;

import java.util.List;
import java.util.Map;

/**
 * 接口描述: 代码生成器接口
 *
 * @author fxr
 * @version 1.0.0
 * @date 2022/1/14 13:25
 */
public interface GenerateCodeApi {

    /***
     * 初始化模板数据
     * @return
     * @throws Exception
     */
    Map<String,Object> init(TableInfo tableInfo) throws Exception;

    /***
     * 自定义生成代码
     * @param path 代码生成路径
     * @param template 模板路径
     * @param customerPath 自定义模板
     * @return
     * @throws Exception
     */
    List<String> autoGen(TableInfo tableInfo,String path,String template,String customerPath)throws Exception;

    /***
     * 自定义生成代码
     * @param customerPath 自定义模板下，子模板目录
     * @return
     * @throws Exception
     */
    List<String> autoGen(TableInfo info, String customerPath)throws Exception;
}
